import request from '@/utils/request'

/**
 * 获取分类列表
 * @returns {Promise<any>}
 */
export async function getTestList(params) {
  return request('/admin/test_list', {params})
}

/**
 * 删除试卷
 * @returns {Promise<any>}
 */
export async function deleteTestList(id) {
  return request.delete(`/admin/test_list/${id}`)
}

/**
 * 复制试卷
 * @returns {Promise<any>}
 */
export async function cpTestList(id) {
  return request.post(`/admin/test_list/copy/${id}`)
}

/**
 * 添加试卷
 * @returns {Promise<any>}
 */
export async function addTestList(data) {
  return request.post('/admin/test_list', {data})
}

/**
 * 试卷详情
 * @returns {Promise<any>}
 */
export async function TestListData(id) {
  return request(`/admin/test_list/${id}`)
}

/**
 * 试卷详情
 * @returns {Promise<any>}
 */
export async function TestListQuestionData(params) {
  return request.post(`/admin/test_list/select_questions`, {params})
}

export async function TestListMod(id, data) {
  return request.put(`/admin/test_list/${id}`, {data})
}

/**
 * 试卷导出
 *
 * @param Tid int 试卷id
 * @param type string 导出类型
 * @returns {Promise<void>}
 */
export async function hasUnitTest(Tid, type) {
  return request(`/admin/test_list/export/${Tid}?type=${type}`, {
    headers: {
      'biz-source-param': 'BLG'
    },
    responseType: 'blob',
    method: 'post'
  })
}

/**
 * 预览试卷
 *
 * @param id int 试卷id
 * @returns {Promise<any>}
 */
export async function viewTestList(id) {
  return request(`/admin/test_list/preview/${id}`)
}
